/**
 * 常用工具库，配置api服务器地址及常用工具函数
 */
export default (function() {  
	//api在线接口
	const baseUrl = "https://haolaoshiya.com/sr"; 
	//api本地接口
    //const baseUrl = "http://localhost:5000";   
	//图片服务器
    const imgServer= baseUrl;  
	function getCurPageParams() {
		/*获取当前路由*/
		let curPage = getCurPage();
		//在微信小程序或是app中，通过curPage.options；如果是H5，则需要curPage.$route.query（H5中的curPage.options为undefined，所以刚好就不需要条件编译了）
		return curPage.options || curPage.$route.query;
	} 

	function getCurPage() {
		let pages = getCurrentPages();
		let curPage = pages[pages.length - 1];
		return curPage
	}
	/**
	 * 应用内的跳转页面
	 * @param {Object} url
	 * @param {Object} type
	 */
	function goTo(url, type) {
		if (!url) return;
		if (!type) {
			uni.navigateTo({
				url
			});
		} else if (type == "reLaunch") {
			uni.reLaunch({
				url: url
			});
		} else if (type == "open") { /*打开外部web url*/
			if (plus) {
				plus.runtime.openURL(url);
			} else {
				window.open(url);
			}
		}
	}
	/**
	 * 后退
	 */
	function back() {
		if (getCurrentPages().length < 2 && 'undefined' !== typeof __wxConfig) {
			let url = '/' + __wxConfig.pages[0]
			return uni.redirectTo({
				url
			})
		}
		uni.navigateBack({
			delta: 1
		});
	}
	
	const msg = (title, duration = 1500, mask = false, icon = 'none') => {
			typeof(duration) == "string" && (icon = duration, duration = 1500)
			//统一提示方便全局修改
			if (Boolean(title) === false) {
				return;
			}
			uni.showToast({
				title,
				duration,
				mask,
				icon
			});
		}
		/**日期格式化
		 * @param {Object} thistime
		 * @param {Object} fmt
		 */
    function dateFormat(thistime, fmt) {
		  fmt=fmt||"yyyy-MM-dd"  //
	      let $this = new Date(thistime.replace(/-/g, '/')) 
	      let o = {
	        'M+': $this.getMonth() + 1,
	        'd+': $this.getDate(),
	        'h+': $this.getHours(),
	        'm+': $this.getMinutes(),
	        's+': $this.getSeconds(),
	        'q+': Math.floor(($this.getMonth() + 3) / 3),
	        'S': $this.getMilliseconds()
	      }
	      if (/(y+)/.test(fmt)) {
	        fmt = fmt.replace(RegExp.$1, ($this.getFullYear() + '').substr(4 - RegExp.$1.length))
	      }
	      for (var k in o) {
	        if (new RegExp('(' + k + ')').test(fmt)) {
	          fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (('00' + o[k]).substr(('' + o[k]).length)))
	        }
	      }
	      return fmt
	    } 
	/**
	 * 数字前加0
	 * @param {Object} num 数字
	 * @param {Object} n 总位数
	 */
	function plusZero(num, n) {
	    return (Array(n).join(0) + num).slice(-n);
	}
	return {
		baseUrl,
		imgServer,
		getCurPage,
		getCurPageParams,
		goTo,
		back,
		msg,
		dateFormat,
		plusZero
	}
})()
